//    Openbravo POS is a point of sales application designed for touch screens.
//    Copyright (C) 2007-2009 Openbravo, S.L.
//    http://www.openbravo.com/product/pos
//
//    This file is part of Openbravo POS.
//
//    Openbravo POS is free software: you can redistribute it and/or modify
//    it under the terms of the GNU General Public License as published by
//    the Free Software Foundation, either version 3 of the License, or
//    (at your option) any later version.
//
//    Openbravo POS is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//    along with Openbravo POS.  If not, see <http://www.gnu.org/licenses/>.

package com.openbravo.pos.customers;

import java.awt.Component;

import cn.ekuma.data.dao.I_DataLogic;
import cn.ekuma.data.ui.swing.SwingEditorRecord;
import cn.ekuma.epos.datalogic.I_DataLogicSales;
import cn.ekuma.epos.panel.JPanelTableDAO;

import com.openbravo.bean.BusinessPartner;
import com.openbravo.data.basic.BasicException;
import com.openbravo.pos.base.AppLocal;
import com.openbravo.pos.model.AbstractPosSwingModel;
import com.openbravo.pos.model.BaseSwingModel;

/**
 *
 * @author adrianromero
 */
@SuppressWarnings("serial")
public class CustomersPanel extends JPanelTableDAO<BusinessPartner> {
    
    private CustomersEditor jeditor;
	private I_DataLogicSales m_dlSales;
    
    /** Creates a new instance of CustomersPanel */
    public CustomersPanel() {    
    }
    
    protected void init() {
        jeditor = new CustomersEditor(m_dlSales, dirty);    
    }
    
    @Override
    public void activate() throws BasicException { 
        jeditor.activate();         
        super.activate();
    }
    
    public SwingEditorRecord getEditor() {
        return jeditor;
    }       
    
    public String getTitle() {
        return AppLocal.getIntString("Menu.CustomersManagement");
    }

	@Override
	public Component getFilter() {	
		return null;
	}

	@Override
	public I_DataLogic getDataLogic() {
		return this.m_dlSales;
	}

	@Override
	public Class getSuportClass() {
		return BusinessPartner.class;
	}

	@Override
	public String getObjectRenderString(BusinessPartner obj) {
		
		return obj.getName();
	}

	@Override
	public String getModelName() {
		return BaseSwingModel.NAME;
	}

	@Override
	public void setModel(AbstractPosSwingModel mode) {
		 m_dlSales = mode.getDLSales();	
	}    
}
